package com.itdl.fastdfs.demo;

import org.csource.common.MyException;
import org.csource.common.NameValuePair;
import org.csource.fastdfs.*;

import java.io.IOException;

/**
 * @author: itdl
 * @date: 2022/3/7 12:09
 * @description: 测试上传
 * @version: 1.0
 */
public class TestUpload {
    public static void main(String[] args) throws IOException, MyException {
        // 1、加载配置文件
        ClientGlobal.initByProperties("fastdfs.properties");
        // 2、创建一个tracker客户端，用于获取跟踪服务器
        TrackerClient trackerClient = new TrackerClient();
        TrackerServer trackerServer = trackerClient.getConnection();

        // 3、使用tracker server获取一个storage客户端, 此时还没有获取到storage server
        StorageClient1 storageClient = new StorageClient1(trackerServer, null);

        // 4、定义文件元数据信息，用于上传
        NameValuePair[] nameValuePairs = new NameValuePair[1];
        nameValuePairs[0] = new NameValuePair("fileName", "test.jpg");

        // 5、执行上传操作 参数1表示文件在磁盘中的全路径，参数2表示文件后缀，参数3表示元数据信息
        String fileId = storageClient.upload_file1("F:\\new\\test.jpg", "jpg", nameValuePairs);
        System.out.println(fileId);
    }
}
